223 파이썬 GPIO 제어
파이썬 GPIO 제어 과정은 Raspberry Pi의 GPIO 핀을 Python 코드로 제어해 LED, 버튼, 부저, 릴레이를 연결하고 실제 장치 반응을 만드는 과정이다.
0. 교육을 하는 이유와 궁극적인 목표
이 교육의 궁극적 목표는 학습자가 Python 코드와 GPIO 핀의 물리적 동작을 연결해 이해하고, 입력·출력·이벤트·예외처리를 활용해 센서와 액추에이터가 안정적으로 반응하는 장치를 직접 제작할 수 있게 하는 것이다.
참고한 유료형 교육 흐름
- 민간 Raspberry Pi·IoT 부트캠프처럼 운영체제 설치, 네트워크 연결, 센서 제어, 서버 배포를 실습 중심으로 연결하는 흐름
- 미국·영국 메이커 아카데미처럼 Python, Linux CLI, GPIO, 카메라, 웹서버를 단계별 프로젝트로 완성하는 흐름
- 유럽 전문 로보틱스 워크숍처럼 하드웨어 오류 진단, 로그 확인, 원격 접속, 안전한 전원 관리를 함께 훈련하는 흐름
- 유료 IoT 개발 과정처럼 센서 데이터 수집, 대시보드, 자동화, 발표·전시 산출물까지 연결하는 흐름
입문 · 1일
GPIO 핀맵과 전기적 안전 이해
파이썬 GPIO 제어 핵심 구조와 안전 이해



| 구분 | 세부 내용 | 실천·실습 방법 |
|---|---|---|
| 목표 1 | GPIO 핀맵과 전기적 안전 이해 | BCM 번호와 물리 핀 번호를 비교해 핀맵 표를 만들고 GND·3.3V·5V를 구분한다. LED 회로를 연결하기 전 저항값과 전류 흐름을 확인해 핀 손상 위험을 줄인다. |
| 목표 2 | 실습 오류를 기록하고 원인을 수정한다 | 파이썬 GPIO 제어 실습 중 발생한 배선, 설정, 코드, 통신 오류를 오류노트에 기록한다. 수정 전후 동작 결과를 사진·영상·로그로 비교해 재현 가능한 해결 절차를 만든다. |
| 목표 3 | 결과물을 문서화하고 발표한다 | 회로도, 코드 구조, 테스트 조건, 사용 플랫폼을 한 페이지 제작 보고서로 정리한다. Canva 또는 Google Slides로 3분 데모 발표 자료를 만들고 동료 피드백을 반영한다. |
| 사용 플랫폼 | Python 3, gpiozero, RPi.GPIO, Thonny, Terminal, Fritzing |
|---|---|
| 강사 스펙 | Python 기초, Raspberry Pi GPIO, 회로 안전, 센서·액추에이터 제어 프로젝트 지도 경험 4년 이상 |
| 수업대상 | 중학생, 고등학생, 피지컬컴퓨팅 기초 이수자, 라즈베리파이 프로젝트반 |
| 소요시간 | 6-8시간 |
| 준비물 | Raspberry Pi, 브레드보드, LED, 저항, 버튼, 부저, 릴레이 모듈, 점퍼선 |
| 산출물 | GPIO 제어 회로, Python 코드, 생활형 입력·출력 장치 1단계 산출물 |
| 평가방법 | 원리 이해 30%, 안전 점검 25%, 실습 완성 30%, 참여 15% |
초급 · 2일
Python으로 디지털 출력 제어
파이썬 GPIO 제어 기본 구현과 값 관찰



| 구분 | 세부 내용 | 실천·실습 방법 |
|---|---|---|
| 목표 1 | Python으로 디지털 출력 제어 | gpiozero LED 클래스로 LED 점멸, 신호등 패턴, 부저 알림을 구현한다. RPi.GPIO 방식으로 같은 동작을 작성해 라이브러리별 코드 구조 차이를 비교한다. |
| 목표 2 | 실습 오류를 기록하고 원인을 수정한다 | 파이썬 GPIO 제어 실습 중 발생한 배선, 설정, 코드, 통신 오류를 오류노트에 기록한다. 수정 전후 동작 결과를 사진·영상·로그로 비교해 재현 가능한 해결 절차를 만든다. |
| 목표 3 | 결과물을 문서화하고 발표한다 | 회로도, 코드 구조, 테스트 조건, 사용 플랫폼을 한 페이지 제작 보고서로 정리한다. Canva 또는 Google Slides로 3분 데모 발표 자료를 만들고 동료 피드백을 반영한다. |
| 사용 플랫폼 | Python 3, gpiozero, RPi.GPIO, Thonny, Terminal, Fritzing |
|---|---|
| 강사 스펙 | Python 기초, Raspberry Pi GPIO, 회로 안전, 센서·액추에이터 제어 프로젝트 지도 경험 4년 이상 |
| 수업대상 | 중학생, 고등학생, 피지컬컴퓨팅 기초 이수자, 라즈베리파이 프로젝트반 |
| 소요시간 | 8-12시간 |
| 준비물 | Raspberry Pi, 브레드보드, LED, 저항, 버튼, 부저, 릴레이 모듈, 점퍼선 |
| 산출물 | GPIO 제어 회로, Python 코드, 생활형 입력·출력 장치 2단계 산출물 |
| 평가방법 | 구현 정확도 30%, 값 관찰 30%, 오류 수정 25%, 협업 15% |
중급 · 3일
버튼 입력과 이벤트 처리 구현
파이썬 GPIO 제어 응용 로직과 안정화



| 구분 | 세부 내용 | 실천·실습 방법 |
|---|---|---|
| 목표 1 | 버튼 입력과 이벤트 처리 구현 | Button 객체와 when_pressed 이벤트로 버튼 누름에 따라 LED와 부저가 반응하게 만든다. 디바운싱과 예외처리를 추가해 반복 입력 오류와 종료 시 GPIO 정리 문제를 해결한다. |
| 목표 2 | 실습 오류를 기록하고 원인을 수정한다 | 파이썬 GPIO 제어 실습 중 발생한 배선, 설정, 코드, 통신 오류를 오류노트에 기록한다. 수정 전후 동작 결과를 사진·영상·로그로 비교해 재현 가능한 해결 절차를 만든다. |
| 목표 3 | 결과물을 문서화하고 발표한다 | 회로도, 코드 구조, 테스트 조건, 사용 플랫폼을 한 페이지 제작 보고서로 정리한다. Canva 또는 Google Slides로 3분 데모 발표 자료를 만들고 동료 피드백을 반영한다. |
| 사용 플랫폼 | Python 3, gpiozero, RPi.GPIO, Thonny, Terminal, Fritzing |
|---|---|
| 강사 스펙 | Python 기초, Raspberry Pi GPIO, 회로 안전, 센서·액추에이터 제어 프로젝트 지도 경험 4년 이상 |
| 수업대상 | 중학생, 고등학생, 피지컬컴퓨팅 기초 이수자, 라즈베리파이 프로젝트반 |
| 소요시간 | 12-16시간 |
| 준비물 | Raspberry Pi, 브레드보드, LED, 저항, 버튼, 부저, 릴레이 모듈, 점퍼선 |
| 산출물 | GPIO 제어 회로, Python 코드, 생활형 입력·출력 장치 3단계 산출물 |
| 평가방법 | 응용 로직 35%, 안정성 25%, 코드 정리 25%, 테스트 15% |
심화 · 4일
생활형 GPIO 제어 장치 제작
파이썬 GPIO 제어 실전 프로젝트 제작



| 구분 | 세부 내용 | 실천·실습 방법 |
|---|---|---|
| 목표 1 | 생활형 GPIO 제어 장치 제작 | 버튼으로 모드를 바꾸는 책상 알림등 또는 릴레이 제어 모형을 제작한다. Fritzing 회로도, Python 코드, 동작 영상을 포함한 제작 보고서를 완성한다. |
| 목표 2 | 실습 오류를 기록하고 원인을 수정한다 | 파이썬 GPIO 제어 실습 중 발생한 배선, 설정, 코드, 통신 오류를 오류노트에 기록한다. 수정 전후 동작 결과를 사진·영상·로그로 비교해 재현 가능한 해결 절차를 만든다. |
| 목표 3 | 결과물을 문서화하고 발표한다 | 회로도, 코드 구조, 테스트 조건, 사용 플랫폼을 한 페이지 제작 보고서로 정리한다. Canva 또는 Google Slides로 3분 데모 발표 자료를 만들고 동료 피드백을 반영한다. |
| 사용 플랫폼 | Python 3, gpiozero, RPi.GPIO, Thonny, Terminal, Fritzing |
|---|---|
| 강사 스펙 | Python 기초, Raspberry Pi GPIO, 회로 안전, 센서·액추에이터 제어 프로젝트 지도 경험 4년 이상 |
| 수업대상 | 중학생, 고등학생, 피지컬컴퓨팅 기초 이수자, 라즈베리파이 프로젝트반 |
| 소요시간 | 16-24시간 |
| 준비물 | Raspberry Pi, 브레드보드, LED, 저항, 버튼, 부저, 릴레이 모듈, 점퍼선 |
| 산출물 | GPIO 제어 회로, Python 코드, 생활형 입력·출력 장치 4단계 산출물 |
| 평가방법 | 작동성 35%, 실용성 25%, 완성도 25%, 발표 15% |